﻿using Application.DTO;
using Application.DTO.Syslog;
using Application.IService;

using Domain.Entity.OperationLogD;
using Domain.Entity.Permission;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Infrastructure.IRepository.Base
{
    //系统日志服务接口
    public interface IOperationLogService : IBaseService<OperationLog>
    {

        /// <summary>
        /// 日志添加
        /// </summary>
        /// <param name="dto"></param>
        /// <returns></returns>
        public  Task<ResultDTO<string>> OperationLogAdd(OperationLogAddDTO dto);



        /// <summary>
        /// 日志的显示+分页+内容查询
        /// </summary>
        /// <param name="Pagesize"></param>
        /// <param name="Pageindex"></param>
        /// <param name="Content"></param>
        /// <returns></returns>
        public Task<PageDTO<OperationLogDTO>> LogShow(int Pagesize, int Pageindex, string Content = ""
            //, string StartTime = "", string EndTime = ""
            );

        /// <summary>
        /// 日志的倒序显示+分页+内容查询
        /// </summary>
        /// <param name="Pagesize"></param>
        /// <param name="Pageindex"></param>
        /// <param name="Content"></param>
        /// <returns></returns>
        public Task<PageDTO<OperationLogDTO>> OperationLogReverseOrder(int Pagesize, int Pageindex, string Content = ""
            //, string StartTime = "", string EndTime = ""
            );


        /// <summary>
        /// 添加日志
        /// </summary>
        /// <param name="operation"></param>
        /// <returns></returns>
        public  Task<ResultDTO<string>> Add(OperationLog operation);






    }
}
